#ifndef QDESIGNER_H
#define QDESIGNER_H

#include <QWidget>
#include <QSplitter>
#include <QComboBox>

class AbstractCore;

class WidgetBoxTreeWidget;
class StyledBar;
class QPropertyListView;
class QFormListWidget;
class QActionToolBar;
class QObjectListView;

class QDesigner : public QWidget
{
    Q_OBJECT
public:
    explicit QDesigner(AbstractCore *core,QWidget *parent = 0);

signals:

protected slots:
    void projectOpen();
    void projectClosed();
    void projectSave();
    void updateFormName(int index);
    void    add();
    void    remove();
    void    projectChanged(int type,int index=-1);

    void    selectChanged(int index);
protected:
    AbstractCore    *m_core;
    QSplitter       *m_splitter;


    WidgetBoxTreeWidget *m_widgetbox;
    StyledBar           *m_widgetboxBar;
    QComboBox           *m_fileListCombo;

    QFormListWidget     *m_formlist;
    QActionToolBar      *m_formlistToolBar;
    StyledBar           *m_formlistBar;

    QPropertyListView   *m_listview;
    StyledBar           *m_listviewBar;

    QObjectListView     *m_objectListView;

};

#endif // QDESIGNER_H
